export function ws(port, param, callBack) {
  // 使用window.location.hostname动态获取当前域名
  const socket = new WebSocket(`ws://${window.location.hostname}:${port}`)

  // 监听连接打开事件
  socket.onopen = () => {
    // console.log('WebSocket连接已打开')
    // 发送消息到服务器
    socket.send(JSON.stringify(param))
  }

  // 监听消息事件
  socket.onmessage = event => {
      // console.log('收到服务器消息: ', JSON.parse(event.data))

      callBack && callBack(JSON.parse(event.data), socket)
  }

  // 监听连接关闭事件
  socket.onclose = () => {
      console.log('WebSocket连接已关闭')
  }

  socket.sender = param => socket.send(JSON.stringify(param))
}
